package top.healthylife.gateway.platform.eye.dto.jingyingxinxi.EyeReqBidsDto.req;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import top.healthylife.gateway.dto.annotation.ApiField;
import top.healthylife.gateway.dto.processor.GroupOneMustBeFilledInProcessor;
import top.healthylife.gateway.dto.request.req.ApiReqDto;

import javax.validation.constraints.NotNull;

/**
* @author: GenUtil
* @date: 2020-12-14 21:26:41
*/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel("企业招投标信息[887]")
public class EyeReqBidsDto extends ApiReqDto {

    @ApiField("发布结束日期")
    @JsonProperty("publishEndTime")
    @ApiModelProperty(name = "发布结束日期", example = "2020-01-01")
    private String publishEndTime;

    @ApiField("省份地区")
    @JsonProperty("province")
    @ApiModelProperty(name = "省份地区", example = "")
    private String province;


    @ApiField("每页条数（默认20条，最大20）")
    @JsonProperty("pageSize")
    @ApiModelProperty(name = "每页条数（默认20条，最大20）", example = "20")
    private Integer pageSize = 20;


    @ApiField(value = "（id、name、统一信用代码，只需输入其中一个）", group = GroupOneMustBeFilledInProcessor.class)
    @NotNull(message = "（id、name、统一信用代码，只需输入其中一个）")
    @JsonProperty("keyword")
    @ApiModelProperty(name = "（id、name、统一信用代码，只需输入其中一个）", example = "北京百度网讯科技有限公司")
    private String keyword;

    @ApiField("公告类型 1. 招标预告、2. 招标公告、3. 招标变更、4. 中标结果")
    @JsonProperty("type")
    @ApiModelProperty(name = "公告类型 1. 招标预告、2. 招标公告、3. 招标变更、4. 中标结果", example = "")
    private String type;

    @ApiField("每页条数（默认1）")
    @JsonProperty("pageNum")
    @ApiModelProperty(name = "每页条数（默认1）", example = "1")
    private Integer pageNum = 1;

    @ApiField("发布开始日期")
    @JsonProperty("publishStartTime")
    @ApiModelProperty(name = "发布开始日期", example = "2010-01-01")
    private String publishStartTime;

}
